1. Field of the Invention
The present invention relates to scheduling methods, and more particularly to a method for enforcing quality of service (QOS) protocols for multiplexed channels in the AAL2 protocol.
2. Description of the Related Art
The term xe2x80x98leaky bucket algorithmxe2x80x99 is used to refer to a cell-policing policy known in the art as the Generic Cell Rate Algorithm. This policy receives asynchronous transfer mode (ATM) cells into a xe2x80x9cbucketxe2x80x9d, and leaks the ATM cells out of the bucket at a contracted (requested) rate using metrics like the PCR (Peak Cell Rate) to specify the Quality of Service. The bucket or leaky bucket is typically a storage device, such as a cache, or allocated memory in a storage device. A buffer or buffers are filled, and data is xe2x80x9cleakedxe2x80x9d to subscribers at a predetermined rate. The data is distributed, typically in a round-robin manner. The round-robin technique generates a list of data packets to be distributed and sends the next packet according to the amount of data to be sent and the number of sources of the data. The round-robin system may result in the distribution of data, which is not consistent with the data""s urgency. In other words, data from one user may be distributed ahead of schedule without taking advantage of delay budgets typically allocated to system components. This may result in some subscribers or users getting quicker service while others slower service. In a worst case scenario, subscribers or users receiving slower service may actually xe2x80x9ctime-outxe2x80x9d resulting in a loss of the data at a service access point.
The leaky bucket algorithm works well in ATM switches where the switch moves cells from one ATM link to another. The switch never looks at the payload of the cell; instead, switching is based on an ATM header which includes the relevant routing information.
Multiplexed data streams, like that of the ATM adaptation layer 2 (AAL2) protocol, cannot be handled by the leaky bucket algorithm, since the information to be controlled is contained within the cell""s payload.
ATM Network Protocols, for example, the ITU-T I.363.2, do not specify a protocol for AAL2 multiplexing in the ATM adaptation layer (AAL). Further, the ITU-T I.363.2 network protocol which includes the xe2x80x9cB-ISDN ATM Adaptation layer specification: Type 2 AALxe2x80x9d, ITU-T Recommendation I363.2, FIG. 3/I.363.2 does not specify quality of service (QOS) at the AAL-SAP (Service Access Point) and how it is mapped into the ATM-SAP QOS in the event of multiplexing in the AAL.
Therefore, a need exists for a quality of service enforcement method for AAL multiplexed channels. A further need exists for a program storage device for implementing the enforcement method.
A method for deadline based scheduling for asynchronous transfer mode adaptation layer, type 2, messages, in accordance with the present invention, includes calculating, for a list of channels, a last possible transmit time for messages on each of the channels in accordance with system criteria. The list of channels is prioritized in an ordered list based on a last possible transmit time for the messages for each of the channels. The messages for the channels are transmitted in accordance with the ordered list.
In other methods of the present invention the step of calculating, for a list of channels, a last possible transmit time for messages on each of the channels in accordance with system criteria may include the step of calculating for a list of channels, a last possible transmit time for messages on each of the channels in accordance with a bandwidth, a delay time and a length of the message. The step of prioritizing the list of channels in an ordered list based on a last possible transmit time for the messages for each of the channels may include the step of weighting the calculation to adjust the priority of particular messages. The step of determining if a message is deliverable may be determined in accordance with a delay budget. The step of sending a quality of service error signal if the delay budget is exceeded may also be included. The step of repeating the steps of calculating and prioritizing to update the ordered list for each available channel may be included. The messages are preferably included in ATM data packets. The list of channels may be included on a channel identification queue.
A method for handling quality of service requests for asynchronous transfer mode adaptation layer, type 2, requests, in accordance with the present invention, includes calculating, for a given transmit request, a last possible transmit time for a message in accordance with system criteria, and determining whether the message is capable of completion in accordance with the system criteria. If the message is capable of completion, the request is inserted on a channel identification queue to await a next transmit opportunity. Otherwise, an error message is returned to indicate that the message is incapable of completion.
In other methods, the step of calculating may include the step of calculating, for a given transmit request, a last possible transmit time for a message in accordance with a bandwidth, a delay time and a length of the message. The step of indicating to a user that completion of the request is possible may also be included. The last possible transmit time message may be determined in accordance with a delay budget. The channel identification queue may include a list of channels with messages awaiting a transmit opportunity.
The methods and method steps of the present invention may be implemented by employing a program storage device readable by machine, tangibly embodying a program of instructions executable by the machine to perform the method steps.
These and other objects, features and advantages of the present invention will become apparent from the following detailed description of illustrative embodiments thereof, which is to be read in connection with the accompanying drawings.